package com.crawData.utility;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

import java.util.concurrent.ConcurrentHashMap;


/**
 * 浏览器驱动实例工具类
 */
public   class  WebDriverUtility {

   private static ConcurrentHashMap<String,WebDriver> webDriverHashMap=new ConcurrentHashMap<>();


    /**
     * 获取谷歌浏览器驱动
     * @param keyWebDriver 要爬取的主页地址+手机号作为key
     * @return
     */
    public static WebDriver getWebDriver(String keyWebDriver) {
         //如果已经存在则直接返回
        if (webDriverHashMap.containsKey(keyWebDriver)) {
            return webDriverHashMap.get(keyWebDriver);
        }
        // 实例化 Chrome 驱动
        // 设置 Chrome 驱动路径
        String paht="D:\\dev\\chromedriver-win64_129.0.6668.101\\chromedriver-win64\\chromedriver.exe";
        System.setProperty("webdriver.chrome.driver", paht);
        // 初始化 Chrome 选项
        ChromeOptions options = new ChromeOptions();
        // 如果需要，可以设置代理
        // 使用 Chrome 选项初始化 WebDriver
        WebDriver driver = new ChromeDriver(options);
        webDriverHashMap.put(keyWebDriver,driver);
        return driver;
    }

}
